DJYOS Studio使用说明书
Version 2.1
1.概述
软件简介
DJYOS Studio基于eclipse开发的djyos专用集成开发环境。其功能包括完备的工程管理、版本管理、编码、调试、测试、等服务。
软件运行环境
该软件的运行需要以下软硬件环境:
操作系统 | Windows |
---|---|
最低配置 | CPU:1.8GHZ 内存:512M 硬盘:40G |
版权说明
(1)、授权
授权您在安装使用本『软件产品』,并保留随时向您收回授权力。
(2)、限制
禁止将本『软件产品』之拷贝以盈利为目的传播于他人。您必须遵守所有『软件』产品使用之相关法律。此限制如与法律法规冲突,则以法律法规为准。若您未能遵守本『版权声明』之条款或条件,则在不妨碍其他权力之情况下,终止本软件授权。届时您必须销毁本『软件产品』之所有拷贝。
(3)、著作权
凡与本『软件产品』及其拷贝有关之所有权与著作权均属『都江堰操作系统DJYOS Studio团队』所有。
(4)、不为瑕疵担保。
您因使用本『软件产品』所造成之任何损失和风险将由您独自承担。在相关法律所允许之最大范围内,『都江堰操作系统DJYOS Studio团队』及其供应商不承担任何瑕疵担保责任与条件,不论其为明示或默示者,其中包括(但不限于)适合某特定用途以及不侵害他人权益之默示担保责任。
(5)、就衍生性损害不负赔赏责任。
在相关法律所允许之最大范围内,『都江堰操作系统DJYOS Studio团队』对于您因使用或不能使用本『软件产品』而遭受之特别、衍生性、直接或间接损害(包括,但不限于营业利益之损失、营业中断、数据丢失或其他有形或无形损失)不负任何损害赔赏责任。此项规定不因您事先告知『都江堰操作系统DJYOS Studio团队』,该损害发生之可能性而有所不同。如您安装了本『软件产品』则表示您接受上述免责条款和限制声明。
(6)、其他规定。
若您就本『版权声明』有任何疑问,请接洽『都江堰操作系统DJYOS Studio团队』。
2.软件安装
DJYOS Studio的安装与配置
双击DJYOS Studio软件安装包打开软件安装向导,如图进入授权许可界面。如下图所示。
图 21 确认软件授权信息
选择接受授权许可,则进入到提示信息的对话框,如图2-1所示。
图 22 提示信息
阅读提示信息则进入到,选择好安装目标文件夹,点击“安装”按钮,向导将自动完成软件的安装。如下图所示。
图 23 选择安装路径
可以勾选“创建桌面图标快捷方式”,单击下一步进入安装界面。
图 24 选择附加任务界面
点击安装即可自动完成安装,初次安装完成,需要用户选择工作目录,建议按照默认即可。
注:
- 安装过程中有可能会被杀毒软件误判,请允许执行,或退出杀毒软件。
- DJYOS Studio的运行依赖java环境,DJYOS Studio会在安装结束后弹出安装java的界面,若用户已将装有java运行环境可取消java的安装。
- 若安装完成DJYOS Studio无法启动,很有可能是没有安装DJYOS Studio自带的java。导致java的位数与DJYOS Studio的位数(32/64)不匹配,请重装java,或卸载重装DJYOS Studio。
GIT服务器的使用
工程代码更新
工程代码的更新如图2.2.2-2所示,在工程上右键进入下图所示的菜单选择pull,将git服务器上的代码更新到本工程。
图 25 代码更新
文件比较功能
文件比较在文件上右键选择compare with则可选择与版本库中文件比较,与本地的历史文件比较……如图2.2.4-1所示。
图 26 文件比较
3.管理CPU
嵌入式系统的软件,都是基于某一个板件的,板件内,将包含一个或多个CPU。
DJYOS Studio提供了CPU管理界面,把支持的所有CPU集中管理,用户可以浏览、增加、删除DJYOS支持的CPU,修改CPU的属性。
DJYOS用户设计板件时,直接从CPU目录中选择CPU,与CPU相关的代码,就会自动导入。
所有CPU分门别类,按树形目录组织,源码和CPU描述文件也按相同的目录组织方式存放。有经验的用户,也可以直接修改源码目录。
管理CPU入口
依下图,进入“管理CPU”界面。
图 31 管理CPU入口
添加CPU子目录
在CPU管理界面上选中需要细分的目录,右键选择新建子目录,即可进入添加CPU子目录界面。
图 32 创建CPU子目录界面
为新建的分组起一个名字,然后配置该分组所需的属性,有些不属于该分组的属性则不需配置。没有配置的属性,会出现在子分组或者,属于该组的cpu配置属性中。该组配置的属性为CPU的默认属性。
内核配置
图 33 内核配置界面
内核配置中,您需要填写内核个数,系统会自动在下方显示相应个数的内核行,一次选择每个内核,并且选择完当前内核后,之后的内核都会默认选择当前选择的内核。
复位配置
图 34 复位配置界面
复位配置中,您需要选中需要配置的内核,并在下方文本框中填写内核的复位地址。
时钟配置
图 35 时钟配置界面
时钟配置界面中,配置分以下步骤:
- 配置默认时钟
- 动态添加、删除时钟,添加时钟时,需要配置时钟的名称、频率和选择类型
- 配置每个内核对应时钟的大小
共享存储配置
图 36 共享存储配置界面
共享存储配置中,通过点击添加/删除按钮来新增/减少共享内存,配置内存时,需要选择内存类型(FLASH/RAM),填写内存地址和内存大小。
私有存储配置
图 37 私有存储配置界面
私有存储配置中,需要选中对应内核,通过点击添加/删除按钮来新增/减少相应内核的私有内存,配置内存时,需要选择内存类型(FLASH/RAM),填写内存地址和内存大小。
添加新的CPU
进入相应CPU属性的标签配置,为新建的CPU起一个名字,CPU属于分组的最末端位置,没有子分组,所以需要配置出现在该界面的所有未配置的属性,属性中打钩的选项表示在父分组中已经配置完成,为CPU的默认配置可更改。
添加新的外设驱动
右键选择添加外设驱动,弹出对话框:
图 34 添加新的外设驱动界面
填写Cpu外设名称,点击OK,DJYOS Studio会自动在相应目录下生成cpudrvTest/ cpudrvTest.c和include/ cpudrvTest.h文件,并打开让您编写。
4.管理板件
管理板件入口
图 41 管理板件入口
DJYOS的所有工程,都是依托具体板件的,因此,开发一个新板件的bsp前,就需要在DJYOS Studio中创建该板件。DJYOS Studio提供了方便易用的手段创建新板件,进入创建新板件界面的方法如下:
- 通过DJYOS Studio的菜单:file->New->New board进入。
- 创建工程时,从选择板件的地方进入。
新建板件
主界面右键->新建板件,即可进行新建板件的操作:
图 41 创建新的板件
图 42 创建板件界面
新建板件中时钟的配置是动态的,由于每个Cpu对应的时钟和时钟个数都不同,因此配置板载Cpu时,对应的配置也是动态的。
cpu外设是指cpu片内的一些组件,如果在板件中可能用到,在这里需要选择,工程的裁减部分会根据这里的选择,只裁减选择的部分,没有选择的部分不会出现在工程裁减界面。
板载设备,根据该CPU在这个板件上的外设连接,确定该CPU连接的板载chip,没有选择的板载chip不会出现在工程裁减界面。
存储指的是,板载存储器ROM或者RAM,根据实际情况填写。
如果您已有类似的板件,可选择选择相似板件,并选中该相似的板件。选完相似板件后,会弹出选择相似文件的对话框,这里以EXPLORER-stm32f4为例:
在此处选择您需要的文件,打“√”选择,在您确认新建板件后,DJYOS Studio将自动在您新建的板件目录下添加您已选择的文件,并生成相应的配置文件。
5.新建工程
为了满足不同工程的需求,djyos的工程做了重新的组织,工程类型分为四种,分别为 Iboot And App Project 、Iboot Project 、 App Project 、Bare App Project。
工程类型区别于联系
进入DJYOS project后界面如下所示:
图 51 创建工程
不同的工程适用于不同的工程场景,如果对于iboot不了解,可参考《DJYOS Iboot用户手册》。以下便是对不同工程类型适用场景的介绍:
- iboot and App project :工程用于开发iboot与App,适用于产品需要在线升级功能,且Iboot和APP由同一个团队维护、板件只用于开发一个产品的情况。
- Iboot Project :工程用于开发iboot,用户需要在线升级功能,Iboot和APP分别由两个团队开发,或同一个板件需要支持多个工程。则可考虑使用该工程,配合App Project 工程,该工程只有iboot编译选项。
- App Project:工程用于开发App,其他同“Iboot Project”。
- Bare App Project:用于开发APP自启动、无需Iboot的情况,由Iboot提供的在线升级功能也就没了。。
说明:工程组织中区分工程名与板件名,例如同一个板件,可以创建多个不同的多个工程。
选中要创建工程的类型如果不是Bare App Project还需要指定Iboot size的大小。填写工程名,并选择或创建工程需要的板件。依赖关系为工程依赖板件,板件依赖CPU和芯片驱动。
图 52 选择工程板件
在Select board中选择创建工程需要的板件,如果板件有多个可以通过cpu或者板件名检索,如果板件列表中没有工程需要的板件,可以通过Create New Board进入创建需要的板件。
图 53 板件选择
创建完成需要的板件后如果板载多个CPU还需要选择该工程用到的CPU,如果该工程用到的CPU有多个核还需要指点该工程针对的核。接下来就是设置内核时钟,该时钟即为CPU核运行频率,时钟的大小取值由bsp支持这里不做检查。
填写好工程名、选择好板件之后,点击Next,可进行组件裁剪,详情请查阅第8章《工程裁剪与配置》,裁剪结束后,finish即可完成创建工程。
工程编译流程
上图分为为新建的工程和该工程对应的编译选项(Target),一般的编译过程为:
- 编译库libos和所有三方库
- 编译工程(以工程名为开头的Target)
6.新建bsp工程向导
进入bsp向导主界面:
与新建Djyos工程的过程类似,填写工程名,选择板件,finish之后会在工作空间新建相应的工程
新建芯片驱动向导
进入Chip Driver向导主界面:
填写芯片驱动名称finish即可。Finish之后DJYOS Studio自动在djysrc/bsp/chipdrv目录下生成chipTest/chipTest.c和include/chipTest.h文件,并自动打开由用户进行编辑。
工程裁剪与配置
DJYOS Studio提供组件裁剪与配置的功能,帮助用户裁掉不需要的组件,以节约资源;也可以控制组件的参数,例如缓冲区尺寸等。
不但内核及外围组件可以被裁剪、配置,BSP、第三方组件也可以被裁剪、配置。
进入“裁剪和配置”界面有两种方法:一种是在创建工程时,IDE会根据工程类型创建裁减界面。另一种是,创建好的工程中右键点击->properties->DJYOS General->Component Configure。裁减界面如下图所示:
图 81 裁减界面
左侧为组件配置框架,用户可根据自己的特定需求勾选框架,在勾选后,右侧将会自动勾选上该框架需要用到的组件,并显示该框架的提示信息。其中App | Iboot为App和Iboot共同需要的框架,如果在这里勾上一个框架,在App或者Iboot页面中也会自动勾上对应的框架。这些框架被勾选的情况会被存储到工程的配置文件中,下次进行修改时的默认配置就是此次勾选完的情况。
右侧为:IDE会根据工程的信息,生成裁减工程的目录树,根据组件的类型分为四个裁减的标签,用户需要根据自己工程的需要,进行裁剪配置。
选中方法:在对应的单选框中年打钩,配置方法,选中要配置的组件,配置参数如果有默认值则会列出,用户可更改,如果没有默认值用户就需要用户配置完成。
组件框架配置
注意:其中左侧的框架信息用户可自己配置,配置文件路径为:djysrc/framework-wizard.json
文件配置格式为json格式,没有接触过json格式的用户可自行在网上查阅相关资料,以下给出以下格式范例:
以图形应用为例:
其中图形应用即为框架的名称;
app属性标识此框架是否适用于app,iboot属性标识此框架是否适用于iboot;
components为该框架用到的所有组件;
help标识该框架的帮助信息。
用户组件配置
用户组件,需要存放在usercomponent目录下,在打开DJYOS Studio后,如果工程中libos目录下不存在usercomponent目录,则IDE会自动在工程上加usercomponent链接。用户组件的配置与普通组件的配置相同,需要勾选用户组件时,可在DJYOS General->Component Configure中进行找到用户组件一栏进行配置。
用户库配置
用户自己的库,包括二进制库和源码库,都需放在userlib目录下,在组件裁剪界面中,用户可以看到自己的库:
勾选确认之后,IDE即会自动在工程设置(Settings->Tool Settings->Libries)中添加该库。
配置组件的附加依赖
由于组件配置文件中配置的依赖关系有时可能不足以满足用户的需求,或者用户需要对于特定的工程订制组件的依赖关系,因此,在裁剪配置时,可以进行多选添加某个组件的附加依赖组件,在生成initPrj.c时,这些依赖关系的作用和组件配置文件中的依赖关系的作用相同。
在配置附加依赖组件时,使用Ctrl键进行多选组件,确认配置后在data/depednces.log文件中会生成相应的配置信息。再次打开此工程裁剪界面时,已经配置的依赖关系也会再次显示在此组件的配置中,既无需再次配置。
7.编辑调试
DJYOS Studio包括代码编辑器、编译器、调试器和图形用户界面工具。集成了代码编写功能、分析功能、编译功能、debug功能等是一个一体化的开发软件。
调试器的使用
DJYOS Studio试用版直接借用开源的调试插件,后续版本会开发自己的调试器。
调试器的配置
Eclipse中包含调试功能,结合jlink提供的jlink_gdbserver,调试功能还是很强大的,配置方法如下:
安装5.0及以上版本的jlink工具(建议用最新的,包含更多新器件)。
- 在eclipse界面下,在“Project Explorer”框鼠标点击你要调试的工程名,然后点击小虫子旁边的倒三角形,会列出你曾经执行过的配置,需要修改配置,或者增加配置的话,可选择“Debug configurations”,
图91
- 在弹出对话框中,双击“GDB SEGGER J-Link Debugging”。或者右键点击相似的配置,选择“Duplicate”,将创建新配置。
- 在main选项卡中,在Nane框填入你的配置名,在c/c++ Application框填要调试的文件,也可使用软件默认的名字。
图92
- 在debugger选项卡中,除不用勾外设置调试端口,其他默认即可。点击Variables,把jlink_path变量的值改为你在step1安装的jlink可执行文件目录。器件名可点击“Supported device names”从segger公司网站选择。如图9-4所示:
图 93
- 在Startup选项卡中,无须勾选:,其他按照默认设置即可。其中框需要特别注意,勾上的话,调试前就会自动烧写代码到flash。烧写地址就是程序运行地址,有些CPU比较特别,烧写和运行地址不同,就不能自动烧录了。例如STM32F7xx,烧写时地址必须在0x8000000处,而执行时在0x200000处能跑得更快。是可选项,可以理解为仿真时的一个断点。
若非第一次仿真debug选项会保存之前的配置,仿真只需点击图9-7所示工程选项即可。
图 94
调试功能
调试器具有强大的调试功能具有:
- 反汇编。
图 95
- 全速运行,单步,单行,跳出函数。
图 96
- 调用路径追溯
图 97
条件断点。
首先在需要判断条件的地方打上断点,然后在windows->show view->Breakpoints中,右击所需判断条件的断点,选择 Breakpoint properties,填写断点有效条件。如图4.2.2-1所示:
图 98 条件断点
- 内存监测断点。
在Breakpoints串口中,点击右上角的三角符号,选中箭头所示的内存监测断点,填写监测条件即可,如图4.2.2-2所示:
图 99
图 910 内存断点
- local Telnet Serial SSH终端调试工具。
图 911
8.功能定制
DJYOS Studio致力于让软件开发更好用,更实用。让用户能够通过基本的工程向导,完成所有的工程配置,但工程需求多种多样,工程向导不一定能实现所有的工程需求。对于特别的工程则需用户通过手动配置来实现。
环境变量介绍
文件链接相关的环境变量
和链接路径有关的环境变量,在工程管理菜单中选中工程右键选择Properties 在linked Resources目录下可以建立新的环境变量,新环境变量的Value可以引用另一个环境变量,环境变量可以通过“${Name}”的方式引用该列表中的环境变量。如图6.1-1所示:
图 101文件链接相关的环境变量
头文件引用相关的环境变量
OS代码的头文件路径创建工程时已经添加,用户工程的头文件需要用户自己添加,添加方式为:在工程上右键->Properties->C/C++ General->Paths and Symbols。如图
头文件路径的添加可以通过绝对地址添加,也可以通过相对地址添加,通过相对地址的添加,则需要引用已定义的环境变量。如图6.1-4 头文件路径的设置所示:
图 102 头文件路径的设置
9.编译选项定制
在Properties->C/C++ Build->Settings栏中tool Settings是和编译相关的设置,如图6.1-1所示:
图 103 编译命令相关的设置
注:设置中所引用的变量是在8.1节环境变量节中提到的环境变量。
编译相关的命令在编译器\share\doc\gcc-arm-none-eabi\pdf\gcc\gcc.pdf 中有详细的描述
编译设置简介
- Target Processor 是关于CPU相关的信息描述,包括CPU所使用的内核,内核所使用的架构,支持的指令集,大小端,浮点运算类型等等
- Optimization :设置编译的代码优化,是否与地址无关代码等等。
- Warnings:编译过程中检查的警告选项
- Debugging:产生调试信息的等级
- Cross ARM GNU Assembler:编译汇编文件的命令设置
- Cross ARM C Compiler:编译C文件的命令设置
- Cross ARM Clinker:编译C文件的链接脚本和引用库设置
- Cross ARM GNU Create Flash Image:生成可执行文件的命令行设置
- Cross ARM GNU Create Listing:生成可执行文件中信息的描述文件一般是.lst文件。
- Cross ARM GNU Print Size:编译完成最后输出可执行文件的存储大小信息。
10.源码检查定制
在C/C++ General->Code Analysis标签下,可配置开启或关闭,project或workspace中的,源码检查选项,如果你的工程页面中错误一大堆,很有可能是你开了不需要的检查选项,比如代码风格,如下图所示:
图 104 源码检查开关
11.DJYOS Studio扩展功能
组件重命名
导入工程后,IDE会自动扫描当前工程中的组件与djysrc源码中的组件,如果djysrc源码中的组件中不存在当前工程中的某个源码,则自动弹出修改组件的对话框,如下图所示:
选择对应的组件后,点击确认,即可修改工程中所有与blackbox1有关的信息。
添加需要加入到-I的头文件
IDE工具栏有如下图所示图标:
点击此图标即会自动弹出添加-I的对话框:
由于不同工程有不同的Target,每个Target需要的头文件可能都不同,所以此处以Target分类进行勾选。如上图所示,已经列出所有可以被选择的头文件目录,其中target中已经存在的会被自动勾上,用户可通过勾选或取消勾选来更新target中的头文件信息。
12.FAQ
如何在IDE中打开用户手册?
打开DJYOS Studio,展开Djyos菜单栏,您会看到很多选项。点击有Djyos Logo的【打开用户手册】菜单,即可自动刚打开此说明文档。
13. 编译库时,没有任何反应
当编译libos时,检查libos目录是否存在,如果不存在,在以下界面加入djysrc目录下的所有链接